A machinist, a writer, and a hacker walk into a Perl Mongers meeting...
We're doing a panel on craftsmanship for the September meeting of the Portland Perl Mongers. I'm throwing these difficult questions to a panel of three craftsmen (all of whom have done at least some work with software.)
Of course the venue implies that there will be a "with regard to Perl" bent to the discussion, but 2/3 of the panel doesn't know too much Perl, so there will also be a healthy dose of "with regard to software in general" involved.
Perl may have a reputation as a write-only language, but I've found that many of the best Perl hackers have an impressive command of software engineering/architecture concepts. (And many of Portland's own are working on large systems in Perl.) With some of the modules on CPAN and the work on Perl6, perl has started to acquire advanced concepts such as metaprogramming and domain-specific languages. It's obvious that this is not Perl4 anymore, even if the kids in the back of the class haven't noticed. Yes, there's still enough rope to shoot yourself in the foot with, but a good butcher knows that the bandsaw will always take his arm off faster than it cuts a side of beef.
Should be a fun evening of mixed metaphors about all things Craftsmanship, possibly some answers, and beer at the end.
I realize some of the readers here won't be in Portland for the meeting (why not?) but I'm interested in hearing comments from the rest of perl-land and I'll make sure to get the podcast link on the kwiki ASAP (read that as: "bug me if you're still anxiously awaiting it at the end of next week".)
Re:programming as abstract craftmanship
Aristotle on 2006-09-15T00:07:40
I think that of any discipline, programming is definitely most similar to writing. It sometimes involves mathematics, and on some occasions heavily so, but it’s almost never like mathematics. (Not more so than it is like any other random discipline, which suggests that it is little that it has particularly in common with any of these disciplines – or mathematics.) The famous Abelson/Sussman quote about execution only being incidental probably sums it best.
It’s kinda funny, actually, how rarely “writing” comes up as a simile in literature that tries to liken programming to some other discipline. Mathematics, logic and engineering top the list; then follows a host of other arts; and at last among the also-rans, we find writing. Considering what a programmer does, at a very superficial level (ie. type stuff into a keyboard), you’d assume the mere similarity would point people in that direction at least naïvely. Yet it seems everyone goes looking in loftier spheres first. Maybe noone even thinks about the physical act of programming when they first begin to contemplate the subject?